home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 016 / newfont.arc / NEWFONT.TXT < prev    next >
Encoding:
Text File  |  1986-09-05  |  8.3 KB  |  163 lines

  1. The NEWFONT System
  2. ------------------
  3.  
  4. The programs in NEWFNT.ARC will provide owners of most EGA systems a new set
  5. of text fonts in both 25 and 43 line modes. In addition, they make it a simple
  6. task to switch between the ROM-based 8x14 font and the two new fonts. Included
  7. with the NEWFONT system are alternate font-switching programs to use with the
  8. NANSI.SYS console driver. The NEWFONT system also provides a simple method for
  9. users to load the EGA pallette registers, and make them resident throughout
  10. almost every application program. Two programs are included that will allow
  11. the NEWFONT system to be used with MARK/RELEASE, and with 'EGA-dumb' programs
  12. like Microsoft's CodeView.
  13.  
  14. The NEWFONT system will not operate with EGA cards that cannot do font changes
  15. during mode changes. The Genoa Spectra EGA and the Tseng Labs EVA are the only
  16. EGA cards known at this time which will not operate with the NEWFONT system.
  17. Hopefully these EGA cards will soon fix the bugs in their EGA BIOS.
  18.  
  19. These programs are user supported. Developing these new fonts is alot of work!
  20. If you feel that these programs are of value, I would appreciate a donation of
  21. $10.00. If you are using this program in a commercial environment, then the
  22. donation is not voluntary. If you include a stamped, self-addressed envelope, I
  23. will send patches for MS-Word 3.0 and Lotus 1-2-3 v2.0 that will allow you to
  24. change any color in either text or graphics; this is provided because they are
  25. the only programs I've found that override the pallette-setting features of
  26. NEWFONT. I will also provide details of all the NEWFONT programs so that you
  27. can use your own fonts and run other EGA programs with the NEWFONT system.
  28.  
  29. You can send your donation to:
  30.  
  31.    Mark Horvatich
  32.    3310 Portal #1006
  33.    Colo. Springs, CO   80909
  34.  
  35.  
  36.  
  37. Description of the NEWFONT System
  38. ---------------------------------
  39.  
  40. There are eight programs in the NEWFONT system. The main program, NEWFONT.COM,
  41. loads the NEWFONT system, selects a new 8x14 text font, and loads the EGA
  42. pallette registers with pre-set values. You run NEWFONT.COM by typing NEWFONT
  43. at the DOS prompt, or by having the line NEWFONT as a line in your AUTOEXEC.BAT
  44. file. If you type NEWFONT again, the system will select the ROM-based 8x14
  45. font. Typing NEWFONT repeatedly will simply toggle the display between the
  46. NEWFONT font and the ROM-based font. NEWFONT.COM also moves the entire EGA
  47. SAVE_PTR table into RAM. This will be described later.
  48.  
  49. PLEASE NOTE:   NEWFONT.COM must be the first EGA resident program loaded into
  50.                your system. Failure to do so may cause unpredictable results.
  51.  
  52. The two programs 8X14LOAD.COM and 8X8LOAD.COM will load new 8x14 and 8x8
  53. fonts, respectively, into the NEWFONT system. These programs allow you to
  54. quickly shift between 25 and 43 line mode, since the 8x8 font automatically
  55. selects 43 line mode. The font in the 8X14LOAD program is the same as the font
  56. in the main NEWFONT program. You can still access the ROM-based font at any
  57. time, even with the 8x8 font loaded into your EGA, by typing NEWFONT as
  58. described above.
  59.  
  60. The programs NANS8X8.COM and NANS8X14.COM are identical in function to the
  61. above programs, but are for use with the NANSI.SYS console driver. They should
  62. be used in place of 8X8LOAD.COM and 8X14LOAD.COM if you use NANSI.SYS.
  63.  
  64. The programs RESETPAL.COM and SETPAL.COM simply load the pallette registers
  65. with either the author-chosen values (SETPAL.COM), or the default values
  66. (RESETPAL.COM). This is provided for those who may not like my choice of
  67. colors. It also is an excellent demonstration of how simple it is to
  68. manipulate the pallette registers when the NEWFONT system is loaded.
  69.  
  70. The programs FNTOFF.COM and FNTON.COM will disable and enable, respectively,
  71. the NEWFONT system. After FNTOFF is run, everything is returned to default
  72. operation, but NEWFONT remains in memory. You can then use MARK/RELEASE to
  73. remove NEWFONT from memory, if desired. FNTOFF and FNTON can also be used with
  74. programs like Microsoft's CodeView, which goes crazy whenever any EGA TSR
  75. modifies anything in the EGA SAVE_PTR (poor programming, in my opinion). You
  76. can set up a batch file to run CodeView; this batch file will run FNTOFF.COM,
  77. CV.EXE, and FNTON.COM in the above order.
  78.  
  79. The last program, SETCUR.COM, is provided for those EGA cards that emulated
  80. the bug-filled BIOS of the IBM EGA card. A major bug in the IBM EGA BIOS will
  81. cause the cursor to disppear in 8x8 mode when a program defines a cursor that
  82. is one to three rows tall. Fortunately, most programs make the cursor larger
  83. within the program, and reset the cursor upon exiting the program. If you lose
  84. your cursor after exiting a program, simply type SETCUR, and your cursor will
  85. be restored.
  86.  
  87.  
  88.  
  89. PROBLEMS, WARNINGS, ETC
  90. -----------------------
  91.  
  92. There are two potential problems with the NEWFONT system. First, do not, UNDER
  93. ANY CIRCUMSTANCES, use the NEWFONT system with any other EGA resident program
  94. that does not check whether the SAVE_PTR table has been moved into RAM. You
  95. will most likely crash your system, since NEWFONT will no longer know how to
  96. change fonts. Also, as stated before, the NEWFONT system MUST BE THE FIRST
  97. RESIDENT EGA PROGRAM LOADED. Other EGA resident programs should be loaded after
  98. NEWFONT.COM is loaded. This will ensure that all well-behaved EGA resident
  99. programs work together. If NEWFONT.COM is loaded, however, you can always
  100. return to the NEWFONT system by running SETCUR.COM.
  101.  
  102. The second problem (currently) is with 43 line mode. This mode is not currently
  103. supported by DOS and most application programs, so you must use it at your own
  104. risk. If you would like to use 43 line mode, the file ANSIEG.DOC in DL3 of the
  105. IBM Hardware Forum details the patches necessary to use 43 line mode in DOS.
  106. Hopefully, future versions of DOS and other application programs will recognize
  107. the benefits of 43 line mode, and support it. The NANSI.SYS driver is a good
  108. start in this direction.
  109.  
  110.  
  111.  
  112. Description of EGA SAVE_PTR Table
  113. ---------------------------------
  114.  
  115. The following is a description of the EGA SAVE_PTR table that the NEWFONT
  116. system sets up in RAM. It is provided for the use of software developers who
  117. would like to write EGA resident programs to work with the NEWFONT system.
  118. It is also provided in the hopes that it become a standard, which would make
  119. the above warnings about the NEWFONT system unnecessary.
  120.  
  121. The offset listed is the offset from the EGA entry point found in memory
  122. location 0:4A8h:
  123.  
  124.  
  125.   offset          description                   bytes
  126.  
  127.      0h       DWORD_1 to DWORD_7                  28
  128.     1Ch       reserved                             4
  129.     20h       DWORD_1 table                     1472
  130.    5E0h       DWORD_2 table                      256
  131.    6E0h       DWORD_3 table                       32
  132.    700h       DWORD_4 table                       28
  133.    71Ch       reserved                             4
  134.    720h       font table(s)                     3584
  135.   1520h       ** end of table **
  136.  
  137. Other EGA resident programs (such as ones which set EGA pallettes or load
  138. graphics fonts) which follow the above guidelines do not need to set aside
  139. any RAM for the SAVE_PTR table, since RAM is set aside for everything except
  140. extra fonts. The EGA resident program need only query location 0:4A8h, check
  141. whether the EGA table has been loaded into RAM, and if so, modify the EGA
  142. SAVE_PTR locations as necessary.
  143.  
  144. The NEWFONT system also provides a simple method to load the EGA pallette
  145. registers. NEWFONT defines a function (AH=0CCh) of INT 10h that will return the
  146. segment address (in AX) of the SAVE_PTR table, a segment address (in BX) that
  147. will point to the 16 pallette registers and overscan register at BX:00F0, and a
  148. flag word of 0ABCDh (in CX) if the NEWFONT system is loaded.
  149.  
  150. If a pallette-changing program calls INT 10h with AH=0CCh, checks CX for 0ABCDh
  151. to determine whether the NEWFONT system is loaded, then loads the 17 values at
  152. BX:00F0, the pallette-changing program can exert much more control over the
  153. pallettes than otherwise possible.
  154.  
  155. ------------------------------------------------------------------------------
  156.  
  157. If you have any questions, feel free to ask them in the HP Forum (GO HP) or in
  158. the IBM Hardware Forum (GO IBMHW) in CompuServe. Have fun!
  159.  
  160.  
  161. Mark Horvatich
  162. Sysop, HP Forum (Compuserve)  76703,4163
  163.